Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

IdeVertexBuffer2 Class Reference

#include <deDriver.hpp>

Inheritance diagram for IdeVertexBuffer2:

Inheritance graph
[legend]
Collaboration diagram for IdeVertexBuffer2:

Collaboration graph
[legend]
List of all members.

Public Types

enum  Primitive_t {
  RENDER_POINTLIST = 0, RENDER_LINELIST, RENDER_LINESTRIP, RENDER_TRIANGLELIST,
  RENDER_TRIANGLESTRIP, RENDER_TRIANGLEFAN, RENDER_COUNT, RENDER_FORCE_32BIT = 0x7FFFFFFF
}
 type of rendering for the buffer More...

enum  DataUsage_t {
  USAGE_POSITION = 0, USAGE_NORMAL, USAGE_TEXCOORD, USAGE_COLOR,
  USAGE_TANGENT, USAGE_BINORMAL, USAGE_BLENDWEIGHT, USAGE_BLENDINDICES,
  USAGE_FOG, USAGE_TESSFACTOR, USAGE_POSITION_T, USAGE_DEPTH,
  USAGE_SAMPLE, USAGE_COUNT, USAGE_FORCE_32BIT = 0x7FFFFFFF
}
 Usage specifier for a vertex stream. More...

enum  DataType_t {
  DATA_FLOAT32_1, DATA_FLOAT32_2, DATA_FLOAT32_3, DATA_FLOAT32_4,
  DATA_ARGB, DATA_U8_4, DATA_S16_2, DATA_S16_4,
  DATA_U8_4N, DATA_S16_2N, DATA_S16_4N, DATA_U16_2N,
  DATA_U16_4N, DATA_U10_3, DATA_S10_3N, DATA_FLOAT16_2,
  DATA_FLOAT16_4, DATA_COUNT, DATA_FORCE_32BIT = 0x7FFFFFFF
}
enum  StreamFlag_t { FLAG_DYNAMIC, FLAG_INSTANCES, FLAG_COUNT, FLAG_FORCE_32BIT = 0x7FFFFFFF }

Public Member Functions

virtual void * LockStream (UsageDescriptor_t element)=0
virtual deBoolean UnlockStream (UsageDescriptor_t element, deBoolean modified=(DE_TRUE))=0
virtual deBoolean CreateStream (UsageDescriptor_t element, DataType_t datatype)=0
virtual deBoolean SetStreamFlag (UsageDescriptor_t element, StreamFlag_t flag, u32 value)=0
virtual deBoolean GetStreamFlag (UsageDescriptor_t element, StreamFlag_t flag, u32 *value)=0
virtual DataType_t GetStreamDataType (UsageDescriptor_t element) const=0
virtual deBoolean StreamExists (UsageDescriptor_t element) const=0
virtual deBoolean SetVertexCount (u32 count)=0
virtual deBoolean SetIndexCount (u32 count)=0
virtual deBoolean SetPrimitiveType (Primitive_t primitiveType)=0
virtual u32 GetVertexCount () const=0
virtual u32 GetIndexCount () const=0
virtual u32 GetPrimitiveCount () const=0
virtual Primitive_t GetPrimitiveType () const=0
virtual deBoolean DriverSetInfo (IdeDriver *pDriver, void *Info)=0
virtual void * DriverGetInfo (IdeDriver *pDriver, deBoolean *&UpdatedStreams) const=0
virtual u32 DriverGetNumStreams ()=0
virtual StreamDescriptor_tDriverGetStreamDescriptors ()
virtual u32 DriverLock ()=0
virtual u32 DriverUnlock ()=0

Protected Member Functions

virtual ~IdeVertexBuffer2 ()

Detailed Description

a rewritten vertex buffer class (new, not finished yet)


Member Enumeration Documentation

enum IdeVertexBuffer2::DataType_t
 

Data types that the different buffers are (with different byte-sizes). All have sizes that are multiples of 32 bytes, and may be padded if necessary.

Enumeration values:
DATA_FLOAT32_1  (float_1, 0, 0, 1)
DATA_FLOAT32_2  (float_1, float_2, 0, 1)
DATA_FLOAT32_3  (float_1, float_2, float_3, 1)
DATA_FLOAT32_4  (float_1, float_2, float_3, float_4)
DATA_ARGB  (R, G, B, A)
DATA_U8_4  (u8_1, u8_2, u8_3, u8_4)
DATA_S16_2  (s16_1, s16_2, 0, 1)
DATA_S16_4  (s16_1, s16_2, s16_3, s16_4)
DATA_U8_4N  normalized version of DATA_U8_4
DATA_S16_2N  normalized version of DATA_S16_2
DATA_S16_4N  normalized version of DATA_S16_4
DATA_U16_2N  normalized, unsigned version of DATA_S16_2
DATA_U16_4N  normalized, unsigned version of DATA_S16_4
DATA_U10_3  (u10_1, u10_2, u10_3, 1)
DATA_S10_3N  normalized, signed version of DATA_U10_3
DATA_FLOAT16_2  (float_1, float_2, 0, 1)
DATA_FLOAT16_4  (float_1, float_2, float_3, float_4)
DATA_COUNT 
DATA_FORCE_32BIT 

enum IdeVertexBuffer2::DataUsage_t
 

Usage specifier for a vertex stream.

Enumeration values:
USAGE_POSITION  untransformed position
USAGE_NORMAL  vertex normal
USAGE_TEXCOORD  texture coordinates
USAGE_COLOR  vertex color
USAGE_TANGENT 
USAGE_BINORMAL 
USAGE_BLENDWEIGHT 
USAGE_BLENDINDICES 
USAGE_FOG 
USAGE_TESSFACTOR 
USAGE_POSITION_T 
USAGE_DEPTH 
USAGE_SAMPLE 
USAGE_COUNT 
USAGE_FORCE_32BIT 

enum IdeVertexBuffer2::Primitive_t
 

type of rendering for the buffer

Enumeration values:
RENDER_POINTLIST  render points (v1),(v2)...
RENDER_LINELIST  render lines (v1,v2),(v3,v4)...
RENDER_LINESTRIP  render lines (v1,v2),(v2,v3)...
RENDER_TRIANGLELIST  render triangles (v1,v2,v3),(v4,v5,v6)...
RENDER_TRIANGLESTRIP  render triangles (v1,v2,v3),(v3,v2,v4)...
RENDER_TRIANGLEFAN  render triangles (v1,v2,v3),(v1,v4,v5)...
RENDER_COUNT 
RENDER_FORCE_32BIT 

enum IdeVertexBuffer2::StreamFlag_t
 

Enumeration values:
FLAG_DYNAMIC 
FLAG_INSTANCES 
FLAG_COUNT 
FLAG_FORCE_32BIT 


Constructor & Destructor Documentation

virtual IdeVertexBuffer2::~IdeVertexBuffer2   [inline, protected, virtual]
 


Member Function Documentation

virtual deBoolean IdeVertexBuffer2::CreateStream UsageDescriptor_t    element,
DataType_t    datatype
[pure virtual]
 

virtual void* IdeVertexBuffer2::DriverGetInfo IdeDriver   pDriver,
deBoolean *&    UpdatedStreams
const [pure virtual]
 

virtual u32 IdeVertexBuffer2::DriverGetNumStreams   [pure virtual]
 

virtual StreamDescriptor_t* IdeVertexBuffer2::DriverGetStreamDescriptors   [virtual]
 

virtual u32 IdeVertexBuffer2::DriverLock   [pure virtual]
 

virtual deBoolean IdeVertexBuffer2::DriverSetInfo IdeDriver   pDriver,
void *    Info
[pure virtual]
 

virtual u32 IdeVertexBuffer2::DriverUnlock   [pure virtual]
 

virtual u32 IdeVertexBuffer2::GetIndexCount   const [pure virtual]
 

virtual u32 IdeVertexBuffer2::GetPrimitiveCount   const [pure virtual]
 

virtual Primitive_t IdeVertexBuffer2::GetPrimitiveType   const [pure virtual]
 

virtual DataType_t IdeVertexBuffer2::GetStreamDataType UsageDescriptor_t    element const [pure virtual]
 

virtual deBoolean IdeVertexBuffer2::GetStreamFlag UsageDescriptor_t    element,
StreamFlag_t    flag,
u32   value
[pure virtual]
 

virtual u32 IdeVertexBuffer2::GetVertexCount   const [pure virtual]
 

virtual void* IdeVertexBuffer2::LockStream UsageDescriptor_t    element [pure virtual]
 

Todo:
implement IdeVertexBuffer2

virtual deBoolean IdeVertexBuffer2::SetIndexCount u32    count [pure virtual]
 

virtual deBoolean IdeVertexBuffer2::SetPrimitiveType Primitive_t    primitiveType [pure virtual]
 

virtual deBoolean IdeVertexBuffer2::SetStreamFlag UsageDescriptor_t    element,
StreamFlag_t    flag,
u32    value
[pure virtual]
 

virtual deBoolean IdeVertexBuffer2::SetVertexCount u32    count [pure virtual]
 

virtual deBoolean IdeVertexBuffer2::StreamExists UsageDescriptor_t    element const [pure virtual]
 

virtual deBoolean IdeVertexBuffer2::UnlockStream UsageDescriptor_t    element,
deBoolean    modified = (DE_TRUE)
[pure virtual]
 


The documentation for this class was generated from the following file:
Generated on Mon Sep 12 20:18:46 2005 for Destiny3D by doxygen1.3-rc3